home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML Authority.sea / XML Authority / Required / Samples / PIF-XML / PIF-XML.DTD < prev   
Encoding:
Text File  |  2000-05-03  |  5.0 KB  |  120 lines  |  [TEXT/XMLA]

  1. <!-- PIF-XML Version 0.9 
  2.      Process Interchange Format in Extensible Markup Language
  3.      Jeffrey Ricker 10JUN98 ricker@xmls.com 
  4.      direct translation from PIF-KIF version 1.2
  5.      http://ccs.mit.edu/pif/
  6.      http://www.xmls.com/pif/
  7.      -->
  8. <!ENTITY % pif-basic.att " id ID  #REQUIRED">
  9.  
  10. <!ENTITY % pif-basic.param "name
  11.                             | documentation?
  12.                             | component*
  13.                             | constraint?
  14.                             | user-attribute*">
  15.  
  16. <!ENTITY % pif-links.att " href          CDATA  #REQUIRED
  17.                      inline         (true | false )  'true'
  18.                      role          CDATA  #IMPLIED
  19.                      title         CDATA  #IMPLIED
  20.                      content-role  CDATA  #IMPLIED
  21.                      content-title CDATA  #IMPLIED">
  22.  
  23. <!ELEMENT pif  (activity* | activity-status* | agent* | before* | creates* | decision* | modifies* | object* | performs* | relation* | successor* | timepoint* | uses* )>
  24.  
  25. <!ELEMENT activity  (%pif-basic.param; | precondition? | postcondition? | begin? | end? )>
  26. <!ATTLIST activity  %pif-basic.att; >
  27. <!ELEMENT activity-ref EMPTY>
  28. <!ATTLIST activity-ref  xml:link      CDATA  #FIXED 'simple'
  29.                         %pif-links.att; >
  30. <!ELEMENT activity-status  (%pif-basic.param; | activity-ref+ | status+ | when? )>
  31. <!ATTLIST activity-status  %pif-basic.att; >
  32. <!ELEMENT actor EMPTY>
  33. <!ATTLIST actor  xml:link      CDATA  #FIXED 'simple'
  34.                  %pif-links.att; >
  35. <!ELEMENT agent  (%pif-basic.param; | capability* )>
  36. <!ATTLIST agent  %pif-basic.att; >
  37. <!ELEMENT before  (%pif-basic.param; | preceding-timepoint | succeeding-timepoint )>
  38. <!ATTLIST before  %pif-basic.att; >
  39. <!ELEMENT capability EMPTY>
  40. <!ATTLIST capability  xml:link      CDATA  #FIXED 'simple'
  41.                       %pif-links.att; >
  42. <!-- the capability of an agent links to an pif:entity element -->
  43. <!ELEMENT component EMPTY>
  44. <!ATTLIST component  xml:link      CDATA  #FIXED 'simple'
  45.                      %pif-links.att; >
  46. <!ELEMENT constraint  (#PCDATA )>
  47. <!ATTLIST constraint  pif-type CDATA  #FIXED 'pif-sentence'
  48.                       language CDATA  #IMPLIED >
  49. <!ELEMENT creates  (%pif-basic.param; | activity-ref | object-ref+ )>
  50. <!ATTLIST creates  %pif-basic.att; >
  51. <!ELEMENT decision  (%pif-basic.param; |  (if , then+ , else* ) )>
  52. <!ATTLIST decision  %pif-basic.att; >
  53. <!ELEMENT documentation ANY>
  54.  
  55. <!ELEMENT else EMPTY>
  56. <!ATTLIST else  xml:link      CDATA  #FIXED 'simple'
  57.                 %pif-links.att; >
  58. <!ELEMENT entity  (%pif-basic.param; )>
  59. <!ATTLIST entity  %pif-basic.att; >
  60. <!-- question: is there ever a need to serialize ENTITY, or is it just an interface? 
  61.      answer: yes. Capabilities are entities. 
  62.      -->
  63. <!ELEMENT if  (#PCDATA )>
  64. <!ATTLIST if  pif-type CDATA  #FIXED 'pif-sentence'
  65.               language CDATA  #IMPLIED >
  66. <!ELEMENT modifies  (%pif-basic.param; | activity-ref | object-ref+ )>
  67. <!ATTLIST modifies  %pif-basic.att; >
  68. <!ELEMENT name  (#PCDATA )>
  69. <!ATTLIST name  pif-type CDATA  #FIXED 'symbol' >
  70. <!ELEMENT object  (%pif-basic.param; )>
  71. <!ATTLIST object  %pif-basic.att; >
  72. <!ELEMENT object-ref EMPTY>
  73. <!ATTLIST object-ref  xml:link      CDATA  #FIXED 'simple'
  74.                       %pif-links.att; >
  75. <!ELEMENT performs  (%pif-basic.param; | actor+ | activity-ref+ )>
  76. <!ATTLIST performs  %pif-basic.att; >
  77. <!ELEMENT postcondition  (#PCDATA )>
  78. <!ATTLIST postcondition  pif-type CDATA  #FIXED 'pif-sentence'
  79.                          language CDATA  #IMPLIED >
  80. <!ELEMENT preceding-timepoint EMPTY>
  81. <!ATTLIST preceding-timepoint  xml:link      CDATA  #FIXED 'simple'
  82.                                %pif-links.att; >
  83. <!ELEMENT precondition  (#PCDATA )>
  84. <!ATTLIST precondition  pif-type CDATA  #FIXED 'pif-sentence'
  85.                         language CDATA  #IMPLIED >
  86. <!ELEMENT relation  (%pif-basic.param; )>
  87. <!ATTLIST relation  %pif-basic.att; >
  88. <!-- is there ever a need to serialize RELATION, or is it just an interface? -->
  89. <!ELEMENT status  (#PCDATA )>
  90. <!ATTLIST status  pif-type CDATA  #FIXED 'symbol' >
  91. <!ELEMENT succeeding-timepoint EMPTY>
  92. <!ATTLIST succeeding-timepoint  xml:link      CDATA  #FIXED 'simple'
  93.                                 %pif-links.att; >
  94. <!ELEMENT successor  (%pif-basic.param; | preceding-activity | succeeding-activity+ )>
  95.  
  96. <!ELEMENT then EMPTY>
  97. <!ATTLIST then  xml:link      CDATA  #FIXED 'simple'
  98.                 %pif-links.att; >
  99. <!ELEMENT timepoint  ( #PCDATA|%pif-basic.param;  )>
  100. <!ATTLIST timepoint  %pif-basic.att;
  101.                      base          CDATA  #FIXED 'ISO-8601'
  102.                      value         CDATA  #IMPLIED >
  103. <!ELEMENT uses  (%pif-basic.param; | activity-ref | object-ref+ )>
  104. <!ATTLIST uses  %pif-basic.att;
  105.                 as             (resource | control )  #IMPLIED >
  106. <!-- the AS attribute is part of IDEF-0 PSV model -->
  107. <!ELEMENT user-attribute ANY>
  108.  
  109. <!ELEMENT when EMPTY>
  110. <!ATTLIST when  xml:link      CDATA  #FIXED 'simple'
  111.                 %pif-links.att; >
  112. <!ELEMENT begin ANY>
  113.  
  114. <!ELEMENT preceding-activity ANY>
  115.  
  116. <!ELEMENT succeeding-activity ANY>
  117.  
  118. <!ELEMENT end ANY>
  119.  
  120.